Many different smart home applications require intimate knowledge of the occupancy state of the home: whether the home is vacant or occupied, and, if occupied, which users are home. In addition to sensors embedded in home devices that provide occupancy signals, the location of associated mobile devices can be used to estimate whether particular individuals are at home, or away from the home. Depending on the target applications, the setup of devices at home, and various states of the home, each source of occupancy information has relative importance and performance, so the configuration of each source may be adjusted to optimize its value.
A number of the applications rely on GeoFencing or similar OS-based location services to trigger behaviors either on the mobile device itself (e.g., smartphone) or on other associated system products. GeoFencing, though, relies on the mobile OS to trigger events based on a respective GeoFence. As such, many common failure modes of a mobile device are undetectable by applications that use these triggers. In this case, the location of the mobile device, if not triggering a GeoFence, is unknown.